package com.iknow.xmpp.service.aidl;

import android.os.Binder;
import android.os.IBinder;
import android.os.IInterface;
import android.os.Parcel;
import android.os.Parcelable.Creator;
import android.os.RemoteException;
import com.iknow.xmpp.service.PresenceAdapter;
import java.util.List;

public abstract interface IBeemRosterListener
  implements IInterface
{
  public abstract void onEntriesAdded(List<String> paramList)
    throws RemoteException;

  public abstract void onEntriesDeleted(List<String> paramList)
    throws RemoteException;

  public abstract void onEntriesUpdated(List<String> paramList)
    throws RemoteException;

  public abstract void onPresenceChanged(PresenceAdapter paramPresenceAdapter)
    throws RemoteException;

  public static abstract class Stub extends Binder
  implements IBeemRosterListener
  {
    private static final String DESCRIPTOR = "com.iknow.xmpp.service.aidl.IBeemRosterListener";
    static final int TRANSACTION_onEntriesAdded = 1;
    static final int TRANSACTION_onEntriesDeleted = 3;
    static final int TRANSACTION_onEntriesUpdated = 2;
    static final int TRANSACTION_onPresenceChanged = 4;

    public Stub()
    {
      attachInterface(this, "com.iknow.xmpp.service.aidl.IBeemRosterListener");
    }

    public static IBeemRosterListener asInterface(IBinder paramIBinder)
    {
      Object localObject;
      if (paramIBinder == null)
        localObject = null;
      while (true)
      {
        while (true)
        {
          return localObject;
          IInterface localIInterface = paramIBinder.queryLocalInterface("com.iknow.xmpp.service.aidl.IBeemRosterListener");
          if ((localIInterface == null) || (!(localIInterface instanceof IBeemRosterListener)))
            break;
          localObject = (IBeemRosterListener)localIInterface;
        }
        localObject = new Proxy(paramIBinder);
      }
    }

    public IBinder asBinder()
    {
      return this;
    }

    public boolean onTransact(int paramInt1, Parcel paramParcel1, Parcel paramParcel2, int paramInt2)
      throws RemoteException
    {
      PresenceAdapter localPresenceAdapter;
      boolean bool;
      switch (paramInt1)
      {
      default:
        bool = super.onTransact(paramInt1, paramParcel1, paramParcel2, paramInt2);
      case 1598968902:
      case 1:
      case 2:
      case 3:
        while (true)
        {
          while (true)
          {
            while (true)
            {
              while (true)
              {
                return bool;
                paramParcel2.writeString("com.iknow.xmpp.service.aidl.IBeemRosterListener");
                bool = true;
              }
              paramParcel1.enforceInterface("com.iknow.xmpp.service.aidl.IBeemRosterListener");
              onEntriesAdded(paramParcel1.createStringArrayList());
              paramParcel2.writeNoException();
              bool = true;
            }
            paramParcel1.enforceInterface("com.iknow.xmpp.service.aidl.IBeemRosterListener");
            onEntriesUpdated(paramParcel1.createStringArrayList());
            paramParcel2.writeNoException();
            bool = true;
          }
          paramParcel1.enforceInterface("com.iknow.xmpp.service.aidl.IBeemRosterListener");
          onEntriesDeleted(paramParcel1.createStringArrayList());
          paramParcel2.writeNoException();
          bool = true;
        }
      case 4:
      }
      paramParcel1.enforceInterface("com.iknow.xmpp.service.aidl.IBeemRosterListener");
      if (paramParcel1.readInt() != 0)
        localPresenceAdapter = (PresenceAdapter)PresenceAdapter.CREATOR.createFromParcel(paramParcel1);
      while (true)
      {
        while (true)
        {
          onPresenceChanged(localPresenceAdapter);
          paramParcel2.writeNoException();
          bool = true;
        }
        localPresenceAdapter = null;
      }
    }

    private static class Proxy
  implements IBeemRosterListener
    {
      private IBinder mRemote;

      Proxy(IBinder paramIBinder)
      {
        this.mRemote = paramIBinder;
      }

      public IBinder asBinder()
      {
        return this.mRemote;
      }

      public String getInterfaceDescriptor()
      {
        return "com.iknow.xmpp.service.aidl.IBeemRosterListener";
      }

      public void onEntriesAdded(List<String> paramList)
        throws RemoteException
      {
        Parcel localParcel1 = Parcel.obtain();
        Parcel localParcel2 = Parcel.obtain();
        try
        {
          localParcel1.writeInterfaceToken("com.iknow.xmpp.service.aidl.IBeemRosterListener");
          localParcel1.writeStringList(paramList);
          this.mRemote.transact(1, localParcel1, localParcel2, 0);
          localParcel2.readException();
          return;
        }
        finally
        {
          localParcel2.recycle();
          localParcel1.recycle();
        }
      }

      public void onEntriesDeleted(List<String> paramList)
        throws RemoteException
      {
        Parcel localParcel1 = Parcel.obtain();
        Parcel localParcel2 = Parcel.obtain();
        try
        {
          localParcel1.writeInterfaceToken("com.iknow.xmpp.service.aidl.IBeemRosterListener");
          localParcel1.writeStringList(paramList);
          this.mRemote.transact(3, localParcel1, localParcel2, 0);
          localParcel2.readException();
          return;
        }
        finally
        {
          localParcel2.recycle();
          localParcel1.recycle();
        }
      }

      public void onEntriesUpdated(List<String> paramList)
        throws RemoteException
      {
        Parcel localParcel1 = Parcel.obtain();
        Parcel localParcel2 = Parcel.obtain();
        try
        {
          localParcel1.writeInterfaceToken("com.iknow.xmpp.service.aidl.IBeemRosterListener");
          localParcel1.writeStringList(paramList);
          this.mRemote.transact(2, localParcel1, localParcel2, 0);
          localParcel2.readException();
          return;
        }
        finally
        {
          localParcel2.recycle();
          localParcel1.recycle();
        }
      }

      public void onPresenceChanged(PresenceAdapter paramPresenceAdapter)
        throws RemoteException
      {
        Parcel localParcel1 = Parcel.obtain();
        Parcel localParcel2 = Parcel.obtain();
        try
        {
          localParcel1.writeInterfaceToken("com.iknow.xmpp.service.aidl.IBeemRosterListener");
          if (paramPresenceAdapter != null)
          {
            localParcel1.writeInt(1);
            paramPresenceAdapter.writeToParcel(localParcel1, 0);
            this.mRemote.transact(4, localParcel1, localParcel2, 0);
            localParcel2.readException();
            localParcel2.recycle();
            localParcel1.recycle();
          }
        }
        finally
        {
          localParcel2.recycle();
          localParcel1.recycle();
        }
      }
    }
  }
}